Typically, a global positioning system (GPS) can provide a user with a position, velocity, and time (PVT) solution, sometimes referred to as a navigation solution. The global positioning system includes a GPS receiver, which typically incorporates current measurements from four or more GPS satellites to update its most recent PVT solution using some navigation algorithm. One such measurement is the pseudorange measurements which can be referred to as the range or distance between a satellite and the GPS receiver. The satellites positions can be calculated for any point in time with known satellite orbital parameters, which are broadcast by the satellites.
The pseudorange measurements can be computed using measured time of signal transmission from the satellite to the GPS receiver, multiplied by the speed of light. Pseudorange measurements are called “pseudo” since the internal clock time of the receiver and GPS time are normally unsynchronized resulting in an unknown, such as, the receiver clock offset Δt, among others, that is typically computed by the navigation algorithm. Thus, with at least four signals, solutions for the receiver position along the x-, y-, z- and Δt-axes can be computed.
GPS measurements can be affected by multipath signals, where the GPS signals reflect off, for example, surrounding terrain, buildings, canyon walls, and hard ground, among other structures. When a signal is reflected, the signal typically passes through a longer path than the corresponding direct-path signal. Thus, the multipath signal can affect the pseudorange measurements, resulting in potential unexpected errors. In fact, multipath is the main contributor of error to the pseudorange measurement. One metric of determining the validity of the pseudorange measurement is through the use of pseudorange residual. Pseudorange residual is calculated as the difference between the pseudorange and the estimated range obtained from the navigation solution.
GPS receiver typically implements algorithms that contain some Failure Detection and Exclusion (FDE) algorithm operating on the pseudorange residual to detect and exclude failed pseudorange measurements from the navigation algorithm. Many FDE functions can determine whether the pseudorange measurements are normal or failures based typically on the magnitude of the pseudorange residuals. It should be noted that since one pseudorange measurement typically corresponds to a pseudorange residual, these two terms sometimes can be exchanged. For example, processing pseudorange measurement residual has the same meaning as processing pseudorange measurement.
A large pseudorange residual typically indicates a failure or a potential failure. The FDE function can either exclude or de-weight the failed measurements in the navigation computation. However, the integrity and accuracy of the pseudorange residual also depends on the estimated range which is calculated from the navigation state in the navigation algorithm. Navigation state includes information associated with, but not limited to, the position, velocity, clock offset, and clock drift of the receiver, among others. If there is a large navigation state error then the FDE may erroneously exclude good or accept bad pseudorange measurements, resulting in a high probability of false alarm or miss detection. Excluding good measurements can also adversely affect satellite geometry distribution or, in other words, dilution of position (DOP), which, in turn, can magnify measurement errors into position solution errors. Accepting bad pseudorange measurements can make a navigation algorithm deliver a bad GPS fix.
Thus, there is a need to differentiate whether the large pseudorange residual is due to large navigation state error or due to pseudorange measurement error such as induced by multipath. Appropriate action can then be taken to either correct the navigation state error or to accept the pseudorange measurement.